When a window is in the background and should not have the cursor on top
of it, its _cursor will be null. By getting the texture through it, we
add this extra check, which was missing before, leading to a cursor
drawn at 0, 0 on windows where it should not have been drawn.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2702>
this.insert_child_below(this._cursor, this._border);
}
+ getCursorTexture() {
+ return this._cursor?.content;
+ }
+
setCursorVisible(visible) {
if (!this._cursor)
return;
const texture = content.get_texture();
- let cursorTexture = this._cursor.content?.get_texture();
+ let cursorTexture = window.getCursorTexture()?.get_texture();
if (!this._cursor.visible)
cursorTexture = null;